Dnnmmp是什么?
它是基于docker的开发环境,具有lnmp,lamp,mac系统下的XAMPP、MAMP一样的功能。但它是未来开发者的趋势,因为基于docker,使你本机电脑有云开发的效果。
它能做什么?
目前集成了 nodejs、PHP、mysql、MongoDB、redis、nginx、go;PHP开发者、nodejs开发者、前端、运维、go可以直接使用。效率提高非常多。
它有什么优势?
一键安装所有程序,或者单独使用某个程序;方便版本切换,还有它是基于docker,一点也不影响本机环境,让程序员的整个生涯都不再需要为环境困扰。
今天加入了对golang的支持,希望学习go的同学,但又不想破坏本地的环境,可以试一下。
github地址
方法
安装步骤如下:
- 本地安装
git
、docker
和docker-compose
(建议使用最新版本:1.23)。
附录1:docker安装 -
clone
项目:# 如果不是`root`用户,那么将当前用户加入`docker`用户组 $ sudo gpasswd -a ${USER} docker # 获取项目 $ git clone https://github.com/wallace5303/dnnmmp.git
-
构建并启动:
$ cd dnnmmp # 构建 $ docker-compose build go
查看镜像:
$ docker image ls
-
进入容器查看信息
# 必须进入GO工作空间 cd ./www/gowork docker run -it --rm -v $PWD:/go:rw --privileged dnnmmp_go /bin/sh # 查看版本 go version # 查看环境变量信息 go env
PS:go的一些变量说明
编写hello world
-
进入go的项目目录
# Go代码必须放在工作空间内 cd ./www/gowork # 编辑文件 vim hello.go # 添加内容 package main import "fmt" func main() { fmt.Println("Hello, World!") } # 进入容器运行 docker run -it --rm -v $PWD:/go:rw --privileged dnnmmp_go /bin/sh go run hello.go Hello, World!
需要深入的学习go,请点击go编程
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。